Variable Arity for LF Work in Progress
نویسندگان
چکیده
The dependently-typed lambda calculus (LF) supports use of meta-level binding in reasoning about bindings and hypotheticals in programming languages. That is, lambda expressions in LF can be used to model binders and hypothetical judgments depending on fixed-size contexts. However, because LF does not have a concept of variable-arity functions, a hypothetical judgment depending on a variable-size context cannot be modeled as an LF function. This paper extends LF to support variable-arity functions. As a result, one can model hypothetical judgments with variable contexts directly in the extended LF. The extended LF allows one to represent statements more transparently than previous work that uses complex meta-machinery to type the LF context. This is work in progress: we are still in the process of constructing a proof of correctness.
منابع مشابه
Ellipses and Lambda Definability
Ellipses are a meta-linguistic notation for denoting terms the size of which are specified by a meta-variable that ranges over the natural numbers. In this work, we present a systematic approach for encoding such meta-expressions in the λ-calculus, without ellipses: Terms that are parameterized by meta-variables are replaced with corresponding λ-abstractions over actual variables. We call such ...
متن کاملProducing Proofs from an Arithmetic Decision Procedure in Elliptical LF
Software that can produce independently checkable evidence for the correctness of its output has received recent attention for use in certifying compilers and proofcarrying code. CVC (“a Cooperating Validity Checker) is a proof-producing validity checker for a decidable fragment of first-order logic enriched with background theories. This paper describes how proofs of valid formulas are produce...
متن کاملUnification Procedure for Terms with Sequence Variables and Sequence Functions
We study term equations with sequence variables and sequence function symbols. A sequence variable can be instantiated by any finite sequence of terms, including the empty sequence. A sequence function abbreviates a finite sequence of functions all having the same argument lists. An instance of such a function is IntegerDivision(x,y) that abbreviates the sequence Quotient(x, y),Remainder(x, y)....
متن کاملPractical Variable-Arity Polymorphism
Just as some functions have uniform behavior over distinct types, other functions have uniform behavior over distinct arities. These variable-arity functions are widely used in scripting languages such as Scheme and Python. Statically typed languages also accommodate modest forms of variable-arity functions, but even ML and Haskell, languages with highly expressive type systems, cannot type che...
متن کاملNeural Networks in Electric Load Forecasting:A Comprehensive Survey
Review and classification of electric load forecasting (LF) techniques based on artificial neuralnetworks (ANN) is presented. A basic ANNs architectures used in LF reviewed. A wide range of ANNoriented applications for forecasting are given in the literature. These are classified into five groups:(1) ANNs in short-term LF, (2) ANNs in mid-term LF, (3) ANNs in long-term LF, (4) Hybrid ANNs inLF,...
متن کامل